package cn.sccl.test;

import javax.annotation.Resource;

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;

import com.mchange.v2.c3p0.ComboPooledDataSource;

import cn.sccl.beans.User;
import cn.sccl.test.jdbctemplate.UserDao;

/**
 * @author 饶爽
 * @time 2019年9月7日 上午9:34:49
 * @version 1.0.0
 * 演示JDBC模板
*/
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class JdbcTemplateDemo {
    @Resource(name="userDao")
    private UserDao ud;
    @Test
    public void fun1() throws Exception {
        //0 准备连接池
        ComboPooledDataSource dataSource = new ComboPooledDataSource();
        dataSource.setDriverClass("com.mysql.jdbc.Driver");
        dataSource.setJdbcUrl("jdbc:mysql:///hibernate_one");
        dataSource.setUser("root");
        dataSource.setPassword("root");
        //1 创建JDBC模板对象
        JdbcTemplate jt = new JdbcTemplate();
        jt.setDataSource(dataSource);
        //2 书写sql,并执行
        for (int i = 0; i < 3; i++) {
            String sql = "insert into t_user values(null,'rose_"+i+"') ";
            jt.update(sql);
        }
    }
    @Test//新增用户信息
    public void fun2() throws Exception{
        User user = new User();
        user.setName("张三");
        ud.save(user);
        System.out.println("新增用户信息完成！");
    }
    @Test//修改用户信息
    public void fun3() throws Exception{
        User u = new User();
        u.setId(2);
        u.setName("jack");
        ud.update(u);
        System.out.println("修改用户信息完成！");
    }
    @Test//删除用户信息
    public void fun4() throws Exception{
        ud.delete(3);
        System.out.println("删除用户信息完成！");
    }
    @Test//当前表中的用户数
    public void fun5() throws Exception{
        System.out.println(ud.getTotalCount());
    }
    @Test//根据id查询用户信息
    public void fun6() throws Exception{
        System.out.println(ud.getById(1));
    }
    @Test//查询所有客户信息
    public void fun7() throws Exception{
        System.out.println(ud.getAll());
    }
}
